A Novel Approach to Program Comprehension Process Using Slicing Techniques
نویسندگان
چکیده
The target of this research is to determine how program slicing contributes to program comprehension and to enhance its functionality by applying the slicing tree concept to its implementation. Slicing tree is a concept that refers to automatically repeating program slicing while the slicing criterion is changeable until the program decomposes into its atomic parts. Using this technique offers several advantages over traditional program slicing. First, it facilitates the process of understanding. In the original slicing, even after the slicing, the number of lines remains excessive for easy understanding. By using slicing trees, the final nodes of the tree point to a relatively small fragment of the code, which is the starting point to understand the program’s behavior. In other words, we have a bottom-up approach and our comprehension process becomes faster and easier. Furthermore, it is much easier to use our knowledge based on recognizing the patterns in smaller fragments of code. Recognizing the patterns will play a great role in comprehending the code and intuiting the intention behind it. Third, this method answers the programmer’s question about deciding the next best slicing criteria for the next step, since it will be chosen automatically and efficiently. We applied the slicing tree concept to several program codes containing basic programming functions to analyze the efficiency of this technique and its contribution to improve program comprehension.
منابع مشابه
Comparison of Backward Slicing Techniques for Java
Program slicing is an important approach for debugging, program comprehension, impact analysis, etc. There are various program slicing techniques ranging from the lightweight to the more accurate but heavyweight. Comparative analyses are important for selecting the most appropriate technique. This paper presents a comparative study of four backward program slicing techniques for Java. The resul...
متن کاملEnabling Certification through an Integrated Comprehension Approach
ion, by virtue of producing an abstract model similar to the program model, works in a manner that facilitates bottom-up comprehension. It thus forms a perfect foil for slicing by (automatically) providing program models to the analyst at specified levels of abstraction, that can be used to form the hypotheses upon which the slicing criteria are based upon. Further, the abstracted model can be ...
متن کاملA demand-driven approach to slicing legacy COBOL systems
Maintenance of aging legacy COBOL systems is labor-intensive and is becoming a more and more difficult problem. Program slicing is a potentially useful analysis for aiding different maintenance activities, including program comprehension, reverse engineering, debugging, and testing. Numerous techniques have been proposed in the past decades; however, in interactive contexts, we found none of th...
متن کاملProgram Comprehension Assisted by Slicing and Transformation
Program slicing is a technique for program simpli cation based upon the deletion of statements which cannot a ect the values of a chosen set of variables. Because slicing extracts a subcomponent of the program concerned with some speci c computation on a set of variables, it can be used to assist program comprehension, allowing a programmer to remodularise a program according to arbitrarily sel...
متن کاملData-flow and Control-flow Analysis of AspectJ Software for Program Slicing
We propose an approach for program slicing of AspectJ software, based on a novel data-flow and control-flow program representation. The representation is built at the source-code level and, unlike previous work, captures the semantic intricacies of various pointcut designators, multiple advices per joint point, dynamic advices, exceptions, and general flow of data to, from, and between advices....
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- JCP
دوره 11 شماره
صفحات -
تاریخ انتشار 2016